/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package managedbean;

import applicationexcepcion.RepartoRegistratoException;
import ejb.common.RepartoManagerLocal;
import ejb.registrazione.RegistrazioneLocal;
import entity.Reparto;
import java.util.List;
import java.util.ResourceBundle;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.annotation.PostConstruct;
import javax.ejb.EJB;
import javax.faces.context.FacesContext;
import utility.ExceptionThrower;
import utility.ResourceBundleLoader;

/**
 *
 * @author Carmela
 */
public class GestioneReparti {
    @EJB
    private RegistrazioneLocal registrazione;
    @EJB
    private RepartoManagerLocal repartoManager;
    private String nomeNuovoReparto;

    /**
     * Get the value of nomeNuovoReparto
     *
     * @return the value of nomeNuovoReparto
     */
    public String getNomeNuovoReparto() {
        return nomeNuovoReparto;
    }

    /**
     * Set the value of nomeNuovoReparto
     *
     * @param nomeNuovoReparto new value of nomeNuovoReparto
     */
    public void setNomeNuovoReparto(String nomeNuovoReparto) {
        this.nomeNuovoReparto = nomeNuovoReparto;
    }


    private List<Reparto> reparti;

    /**
     * Get the value of reparti
     *
     * @return the value of reparti
     */
    public List<Reparto> getReparti() {
        return reparti;
    }

    /**
     * Set the value of reparti
     *
     * @param reparti new value of reparti
     */
    public void setReparti(List<Reparto> reparti) {
        this.reparti = reparti;
    }
    
    /**
     * Creates a new instance of Reparto
     */
    public GestioneReparti() {
    }
    
    public String registraReparto(){
        FacesContext fc=FacesContext.getCurrentInstance();
        ResourceBundle rb=ResourceBundleLoader.getResourceBundle(fc);
        try {
            registrazione.registrazioneReparto(nomeNuovoReparto);
            init();
            ExceptionThrower.throwMessageInfo(fc, rb, "gestioneRepartiInfoM", nomeNuovoReparto);
        } catch (RepartoRegistratoException ex) {
            ExceptionThrower.throwMessageError(fc, rb, "gestioneRepartiErrorM", nomeNuovoReparto);
        }
        return "";
    }
    
    @PostConstruct
    public void init(){
        this.reparti=repartoManager.cercaTutto();
    }
}
